package emediashared.model;

import java.rmi.RemoteException;
import java.util.List;

import org.eclipse.core.runtime.IProgressMonitor;

import emediashared.ui.RemoteNode;

public interface ISharedClient {

	public abstract void resetConfiguration(String url, String userName, String repos);

	public abstract boolean connect();

	public abstract void reConnect();

	public abstract List<IRemoteFile> getFiles(String parent) throws RemoteException;

	public abstract boolean downloadFile(String sourceFile, String target, IProgressMonitor monitor) throws Exception;

	public abstract boolean isConnected();

	public abstract String getName();

	public abstract List<RemoteNode> getChildren();

	public abstract boolean isLoaded();

}